package dto

import "monoblog/common"

type ArticleQuery struct {
	common.BaseQuery

	Title      string `json:"title" form:"title"`
	CategoryId string `json:"categoryId" form:"categoryId"`
	SectionId  string `json:"sectionId" form:"sectionId"`
	AuthorId   string `json:"authorId" form:"authorId"`
	Status     int    `json:"status" form:"status"`

	Ids []string `json:"ids" form:"ids"` //根据ID list查询

}

type SearchQuery struct {
	common.BaseQuery

	Kw string `json:"kw" form:"kw"` //搜索关键字
}

type CommentQuery struct {
	common.BaseQuery

	RootLevel bool   `json:"RootLevel" form:"RootLevel"`
	UserId    string `json:"userId" form:"userId"`
	BlogId    string `json:"blogId" form:"blogId"`
	Status    int    `json:"status" form:"status"`
}

type UserQuery struct {
	common.BaseQuery

	UserId   string   `json:"userId" form:"userId"` //对应的字段是username
	Phone    string   `json:"phone" form:"phone"`
	Email    string   `json:"email" form:"email"`
	Nickname string   `json:"nickname" form:"nickname"`
	Status   int      `json:"status" form:"status"`
	Roles    []string `json:"role" form:"role"`

	UserIds []string `json:"userIds" form:"userIds"` //根据 userId list查询

	Keyword string `json:"keyword" form:"keyword"` //关键字搜索，支持user账号、手机号、邮箱、昵称

	IsLite bool `json:"isLite" form:"-"` //是否是lite查询，lite查询只返回用户的基础信息
}

type AccessLogQuery struct {
	common.BaseQuery

	ClientIp string `json:"clientIp" form:"clientIp"` //IP地址
	Aid      string `json:"aid" form:"aid"`           //请求ID
	Uri      string `json:"uri" form:"uri"`           //关键字搜索，支持path 模糊匹配 (不含'?参数'的uri==path)

	StartTime string `json:"startTime" form:"startTime"` //创建时间范围-开始
	EndTime   string `json:"endTime" form:"endTime"`     //创建时间范围-结束
}
